

// 打开 Photoshop 应用程序
// var app = new ActiveXObject("Photoshop.Application");

// 替换下面的路径为你的动作集（Action Set）的路径
// var actionSetPath = "C:\\Path\\To\\Your\\ActionSet.atn";

// 加载动作集
// app.load(new File(actionSetPath));

// 替换下面的路径为你的待处理图片所在的文件夹路径
var folderPath = "/Users/wenba/Desktop/liuhedijiao";
// 获取文件夹对象
var folder = new Folder(folderPath);

// 获取文件夹中的所有文件
var files = folder.getFiles();
// 遍历文件夹中的每个文件
for (var i = 0; i < files.length; i++) {
    // 判断是否为图片文件
    if (files[i] instanceof File && files[i].fullName.match(/\.(jpg|jpeg|png|gif)$/i)) {
        // 打开图片
        var doc = app.open(files[i]);
        // 添加前缀
        var file = files[i];
        var fileName = file.name;
        var newFileName = "xxx-" + fileName;
        doc.name = newFileName;
        // 设置要添加的毫米数
        var marginInMillimeters = 9;
        // 获取图像的宽高（以点为单位）
        var imageWidthInPoints = doc.width;
        var imageHeightInPoints = doc.height;

        // 将点转换为毫米
        var pointsPerMillimeter = 0.35277777777778; // 1 英寸 = 25.4 毫米
        var imageWidthInMillimeters = imageWidthInPoints / pointsPerMillimeter;
        var imageHeightInMillimeters = imageHeightInPoints / pointsPerMillimeter;

        // 计算新的画布宽高（加上边距）
        var canvasWidthInMillimeters = imageWidthInMillimeters + 2 * marginInMillimeters;
        var canvasHeightInMillimeters = imageHeightInMillimeters + 2 * marginInMillimeters;

        // 将毫米转换为点
        var canvasWidthInPoints = canvasWidthInMillimeters * pointsPerMillimeter;
        var canvasHeightInPoints = canvasHeightInMillimeters * pointsPerMillimeter;

        // 设置文档的新宽高
        doc.resizeCanvas(canvasWidthInPoints, canvasHeightInPoints, AnchorPosition.MIDDLECENTER);

        function runAction(actionName, setName) {
          var desc = new ActionDescriptor();
          var ref = new ActionReference();
          ref.putName(charIDToTypeID("Actn"), actionName);
          ref.putName(charIDToTypeID("ASet"), setName);
          desc.putReference(charIDToTypeID("null"), ref);
          executeAction(charIDToTypeID("Ply "), desc, DialogModes.NO);
        }

        // 替换为你的动作和动作集的名称
        var actionName = "666";
        var actionSetName = "测试1";
        // 执行动作
        app.doAction(actionName, actionSetName);
      // 保存图片到原有文件夹
      var saveOptions;
      if (file instanceof File && /\.(jpg|jpeg)$/i.test(file.name)) {
        saveOptions = new JPEGSaveOptions();
        saveOptions.quality = 8; // 设置JPEG图片质量，可根据需要调整
      } else if (file instanceof File && /\.png$/i.test(file.name)) {
        saveOptions = new PNGSaveOptions();
      } else {
        saveOptions = new SaveOptions();
      }
      doc.saveAs(new File(folder + "/" + newFileName), saveOptions);
      // xxx  end
      // doc.close(SaveOptions.SAVECHANGES);
      doc.close(SaveOptions.DONOTSAVECHANGES);
        // 关闭图片，选择“是”表示保存修改
        // doc.close(SaveOptions.YES);
    }
}

// 关闭 Photoshop 应用程序
// app.quit();
